package com.ha7419x.controller;

import com.ha7419x.dto.FlowNodeStructure;
import com.ha7419x.service.FlowNodeService;
import com.ha7419x.vo.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
public class FlowNodeController {

    @Autowired
    private FlowNodeService flowNodeService;

    /**
     * 流程节点新增
     * 1. 开始，结束节点必须是大节点
     * 2. 只能有一个开始，一个结束
     * 3. 小节点（非开始结束节点）只能有一个父节点，一个子节点
     * 4. 大节点，可以有多个父节点，多个子节点
     * 5. 相机必须是启动状态， 区域和算法，相机必须存在对于关系
     * 6. 避免循环调用
     * 7. 同一级别的节点类型必须相同
     * @param nodeDtoList
     * @return
     */
    @PostMapping("flowNodeAdd")
    public Result flowNodeAdd(@RequestBody List<FlowNodeStructure> nodeDtoList){
        return flowNodeService.flowNodeAdd(nodeDtoList);
    }
}
